package com.ruoyi.approval.service;

import java.util.List;
import com.ruoyi.approval.domain.AExecutionRecords;
import com.ruoyi.approval.dto.ExecutionRequestsDto;
import com.ruoyi.approval.param.AddExecutionRecordsParam;

/**
 * 申请执行记录Service接口
 *
 * @author ruoyi
 * @date 2025-04-02
 */
public interface IAExecutionRecordsService
{
    /**
     * 查询申请执行记录
     *
     * @param approvalRequestId 申请执行记录主键
     * @return 申请执行记录
     */
    public ExecutionRequestsDto selectAExecutionRecordsById(Long approvalRequestId);

    /**
     * 查询申请执行记录列表
     *
     * @param aExecutionRecords 申请执行记录
     * @return 申请执行记录集合
     */
    public List<AExecutionRecords> selectAExecutionRecordsList(AExecutionRecords aExecutionRecords);

    /**
     * 新增申请执行记录
     *
     * @param param 申请执行记录
     * @return 结果
     */
    public int insertAExecutionRecords(AddExecutionRecordsParam param);

    /**
     * 修改申请执行记录
     *
     * @param aExecutionRecords 申请执行记录
     * @return 结果
     */
    public int updateAExecutionRecords(AExecutionRecords aExecutionRecords);

    /**
     * 批量删除申请执行记录
     *
     * @param ids 需要删除的申请执行记录主键集合
     * @return 结果
     */
    public int deleteAExecutionRecordsByIds(Long[] ids);

    /**
     * 我要还车
     *
     * @param approvalRequestId 申请执行记录主键
     * @return 结果
     */
    public int deleteAExecutionRecordsById(Long approvalRequestId);
}
